package decorator;

import model.AgriculturalMachine;

public abstract class AgriculturalMachineDecorator implements AgriculturalMachine {
    protected AgriculturalMachine machine;

    public AgriculturalMachineDecorator(AgriculturalMachine machine) {
        this.machine = machine;
    }

    @Override
    public void start() {
        machine.start();
    }

    @Override
    public void stop() {
        machine.stop();
    }

    @Override
    public void setPathPlanningStrategy(strategy.PathPlanningStrategy strategy) {
        machine.setPathPlanningStrategy(strategy);
    }

    @Override
    public String planPath() {
        return machine.planPath();
    }

    @Override
    public String getStatus() {
        return machine.getStatus();
    }

    @Override
    public String getLocation() {
        return machine.getLocation();
    }

    @Override
    public double getFuel() {
        return machine.getFuel();
    }
}
